#pragma once
#ifndef GENERALSETUP_H
#define GENERALSETUP_H

#include <string>
#include <vector>
#include <boost/filesystem.hpp>
#include <sstream>
#include <iostream>
#include <fstream>
#include <boost/algorithm/string.hpp>
#include "Structure.h"
#include "Constraint.h"

using namespace std;
using namespace boost::filesystem;
using namespace boost::algorithm;

struct Field{
	string dijFile;
	string weightFile;
};

struct Structure{
	string name;
	string structureFile;
	double eud;
};

class GeneralSetup
{
public:
	GeneralSetup(void);
	~GeneralSetup(void);

	void parseSetupFile(string setupFile);

	string dosegridFile;
	vector<Field> fieldFiles;
	vector<Structure> structureFiles;
	vector<SConstraint> objectives;
	string outputDir;
	int maxIter;
};

#endif